# ~~~
# ####################################################################
# Description:  CMakeLists.txt
#
#               This file, 'CMakeLists.txt', implements build system
#               rules for Machinekit-HAL project
#
# Copyright (C) 2021    Jakub Fišer  <jakub DOT fiser AT eryaf DOT com>
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
#
# #####################################################################
# ~~~

add_subdirectory(abs)
add_subdirectory(abs_s32)
add_subdirectory(abs_s32v2)
add_subdirectory(abs_s64)
add_subdirectory(absv2)
add_subdirectory(and2)
add_subdirectory(andn)
add_subdirectory(andnv2)
add_subdirectory(and2v2)
add_subdirectory(at_pid)
add_subdirectory(at_pidv2)
add_subdirectory(bin2gray)
add_subdirectory(bin2grayv2)
add_subdirectory(biquad)
add_subdirectory(biquadv2)
add_subdirectory(bitslice)
add_subdirectory(bitslicev2)
add_subdirectory(bitwise)
add_subdirectory(bitwisev2)
add_subdirectory(bldc)
add_subdirectory(bldc_hall3)
add_subdirectory(bldc_hall3v2)
add_subdirectory(blend)
add_subdirectory(blendv2)
add_subdirectory(charge_pump)
add_subdirectory(charge_pumpv2)
add_subdirectory(clarke2)
add_subdirectory(clarke3)
add_subdirectory(clarke3v2)
add_subdirectory(clarkeinv)
add_subdirectory(clarkeinvv2)
add_subdirectory(clarke2v2)
add_subdirectory(comp)
add_subdirectory(compv2)
add_subdirectory(constant)
add_subdirectory(constantv2)
add_subdirectory(const_rt)
add_subdirectory(const_rtv2)
add_subdirectory(conv)
add_subdirectory(counter)
add_subdirectory(cpp_test)
add_subdirectory(ddt)
add_subdirectory(ddtv2)
add_subdirectory(deadzone)
add_subdirectory(deadzonev2)
add_subdirectory(debounce)
add_subdirectory(debouncev2)
add_subdirectory(delayline)
add_subdirectory(die)
add_subdirectory(div2)
add_subdirectory(div2v2)
add_subdirectory(dummy_stepgen)
add_subdirectory(edge)
add_subdirectory(edgev2)
add_subdirectory(encoder)
add_subdirectory(encoder_ratio)
add_subdirectory(encoder_ratiov2)
add_subdirectory(encoderv2)
add_subdirectory(estop_latch)
add_subdirectory(estop_latchv2)
add_subdirectory(failstop)
add_subdirectory(feedcomp)
add_subdirectory(feedcompv2)
add_subdirectory(flipflop)
add_subdirectory(flipflopv2)
add_subdirectory(gantry)
add_subdirectory(gantryv2)
add_subdirectory(gearchange)
add_subdirectory(gearchangev2)
add_subdirectory(gray2bin)
add_subdirectory(gray2binv2)
add_subdirectory(hbridge)
add_subdirectory(hbridgev2)
add_subdirectory(hypot)
add_subdirectory(hypotv2)
add_subdirectory(icomp)
add_subdirectory(idb)
add_subdirectory(idbv2)
add_subdirectory(ilowpass)
add_subdirectory(ilowpassv2)
add_subdirectory(indextablev2)
add_subdirectory(integ)
add_subdirectory(integv2)
add_subdirectory(interpolator)
add_subdirectory(invert)
add_subdirectory(invertv2)
add_subdirectory(io_muxn)
add_subdirectory(io_muxnv2)
add_subdirectory(iring_demo)
add_subdirectory(joyhandle)
add_subdirectory(joyhandlev2)
add_subdirectory(jplanner)
add_subdirectory(knob2float)
add_subdirectory(knob2floatv2)
add_subdirectory(latencybins)
add_subdirectory(latencybinsv2)
add_subdirectory(lcd)
add_subdirectory(led_dim)
add_subdirectory(led_dimv2)
add_subdirectory(lgantry)
add_subdirectory(lgantryv2)
add_subdirectory(limit1)
add_subdirectory(limit1v2)
add_subdirectory(limit2)
add_subdirectory(limit2v2)
add_subdirectory(limit3)
add_subdirectory(limit3v2)
add_subdirectory(lincurve)
add_subdirectory(lincurvev2)
add_subdirectory(logic)
add_subdirectory(lowpass)
add_subdirectory(lowpassv2)
add_subdirectory(lut5)
add_subdirectory(lut5v2)
add_subdirectory(lutn)
add_subdirectory(lutn_demo)
add_subdirectory(lutnv2)
add_subdirectory(maj3)
add_subdirectory(maj3v2)
add_subdirectory(match8)
add_subdirectory(match8v2)
add_subdirectory(matrix_kb)
add_subdirectory(maxn)
add_subdirectory(maxnv2)
add_subdirectory(mesa_pktgyro_test)
add_subdirectory(message)
add_subdirectory(messagev2)
add_subdirectory(minmax)
add_subdirectory(minmaxv2)
add_subdirectory(minn)
add_subdirectory(minnv2)
add_subdirectory(mult2)
add_subdirectory(mult2v2)
add_subdirectory(multiclick)
add_subdirectory(multiclickv2)
add_subdirectory(multiswitch)
add_subdirectory(multiswitchv2)
add_subdirectory(mux16)
add_subdirectory(mux16v2)
add_subdirectory(mux2)
add_subdirectory(mux2v2)
add_subdirectory(mux4)
add_subdirectory(mux4v2)
add_subdirectory(mux8)
add_subdirectory(mux8v2)
add_subdirectory(mux_generic)
add_subdirectory(muxn)
add_subdirectory(muxn_u32)
add_subdirectory(muxn_u32v2)
add_subdirectory(muxnv2)
add_subdirectory(near)
add_subdirectory(nearv2)
add_subdirectory(neg)
add_subdirectory(negv2)
add_subdirectory(not)
add_subdirectory(notv2)
add_subdirectory(offset)
add_subdirectory(offsetn)
add_subdirectory(offsetnv2)
add_subdirectory(offsetv2)
add_subdirectory(oneshot)
add_subdirectory(oneshotv2)
add_subdirectory(or2)
add_subdirectory(or2v2)
add_subdirectory(orient)
add_subdirectory(orientv2)
add_subdirectory(orn)
add_subdirectory(ornv2)
add_subdirectory(out_to_io)
add_subdirectory(out_to_iov2)
add_subdirectory(pattern)
add_subdirectory(pbmsgs)
add_subdirectory(pbring)
add_subdirectory(pepper)
add_subdirectory(period)
add_subdirectory(pid)
add_subdirectory(pidv2)
add_subdirectory(pll_correction)
add_subdirectory(plug_demo)
add_subdirectory(probe_parport)
add_subdirectory(pwmgen)
add_subdirectory(pwmgenv2)
add_subdirectory(random)
add_subdirectory(remote)
add_subdirectory(reset)
add_subdirectory(resetv2)
add_subdirectory(ringread)
add_subdirectory(ringwrite)
add_subdirectory(rtapi-malloc-free)
add_subdirectory(rtfault)
add_subdirectory(rtmon)
add_subdirectory(safety_latch)
add_subdirectory(safety_latchv2)
add_subdirectory(sample_channel)
add_subdirectory(sample_hold)
add_subdirectory(sample_holdv2)
add_subdirectory(sampler)
add_subdirectory(scale)
add_subdirectory(select8)
add_subdirectory(select8v2)
add_subdirectory(selectn)
add_subdirectory(selectnv2)
add_subdirectory(siggen)
add_subdirectory(scope_rt)
add_subdirectory(sim_axis_hardware)
add_subdirectory(sim_axis_hardwarev2)
add_subdirectory(sim_encoder)
add_subdirectory(sim_parport)
add_subdirectory(sim_parportv2)
add_subdirectory(sim_spindle)
add_subdirectory(sim_spindlev2)
add_subdirectory(sphereprobe)
add_subdirectory(sphereprobev2)
add_subdirectory(stats)
add_subdirectory(statsv2)
add_subdirectory(stepgen)
add_subdirectory(stepgenv2)
add_subdirectory(steptest)
add_subdirectory(steptestv2)
add_subdirectory(streamer)
add_subdirectory(sum2)
add_subdirectory(sum2v2)
add_subdirectory(sumn)
add_subdirectory(sumnv2)
add_subdirectory(svalev2)
add_subdirectory(symbols_define)
add_subdirectory(symbols_define_out)
add_subdirectory(symbols_use)
add_subdirectory(symbols_use_out)
add_subdirectory(thc)
add_subdirectory(thcud)
add_subdirectory(threads)
add_subdirectory(threadtest)
add_subdirectory(threadtestv2)
add_subdirectory(time)
add_subdirectory(timedelay)
add_subdirectory(timedelayv2)
add_subdirectory(timedelta)
add_subdirectory(timedeltav2)
add_subdirectory(timev2)
add_subdirectory(toggle)
add_subdirectory(toggle2nist)
add_subdirectory(toggle2nistv2)
add_subdirectory(togglev2)
add_subdirectory(tristate_bit)
add_subdirectory(tristate_bitv2)
add_subdirectory(tristate_float)
add_subdirectory(tristate_floatv2)
add_subdirectory(uf_demo)
add_subdirectory(updown)
add_subdirectory(updownv2)
add_subdirectory(vari_bit_adc)
add_subdirectory(watch)
add_subdirectory(watchdog)
add_subdirectory(watchdogv2)
add_subdirectory(wcomp)
add_subdirectory(wcompn)
add_subdirectory(wcompnv2)
add_subdirectory(wcompv2)
add_subdirectory(weighted_sum)
add_subdirectory(weighted_sumv2)
add_subdirectory(xhc_hb04_util)
add_subdirectory(xhc_hb04_utilv2)
add_subdirectory(xor2)
add_subdirectory(xor2v2)
